package com.txc.openfeign.common.pay.dto;


import com.txc.common.utils.pay.CommonUtil;
import lombok.Data;

import java.util.Map;

/**
 * 用户前方查询dto
 *
 * @ClassName: CostInfoDto
 * @Author: TXC
 * @Date: 2022-01-25 09:19
 **/
@Data
public class CostInfoDto {

    /**
     * 清算单位，与机构打款账号对应，判断用户打款号正确性的标志。
     */
    private String acctOrgNo;
    /**
     * 查询条件的类别：0－按用户编号查询，1－按手机号码查询，2－按身份证号码查询，3－按原户号查询；其他可根据双方约定规则扩展；
     */
    private String queryType;
    /**
     * 对应查询类别的查询条件。
     */
    private String queryValue;
    /**
     * 开始年月（可以缺省，目前暂无用）
     */
    private String bgnYm;
    /**
     * 结束年月（可以缺省，目前暂无用）
     */
    private String endYm;
    /**
     * 费用类型，11表示电\水等主营费用，12表示业务费等非主营费用；其他可根据双方约定规则扩展；
     */
    private String busiType;

    public static CostInfoDto getInstance(Map<String, Object> body) {
        CostInfoDto costInfoDto = new CostInfoDto();
        costInfoDto.setAcctOrgNo(CommonUtil.getStrByBody(body, "acctOrgNo"));
        costInfoDto.setQueryType(CommonUtil.getStrByBody(body, "queryType"));
        costInfoDto.setQueryValue(CommonUtil.getStrByBody(body, "queryValue"));
        costInfoDto.setBgnYm(CommonUtil.getStrByBody(body, "bgnYm"));
        costInfoDto.setEndYm(CommonUtil.getStrByBody(body, "endYm"));
        costInfoDto.setBusiType(CommonUtil.getStrByBody(body, "busiType"));
        return costInfoDto;
    }
}
